home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 1.iso / toolbox / src / demos / OpenGL / ideas / a.c next >
C/C++ Source or Header  |  1996-11-11  |  6KB  |  195 lines

  1. /*
  2.  * (c) Copyright 1993, Silicon Graphics, Inc.
  3.  * ALL RIGHTS RESERVED 
  4.  * Permission to use, copy, modify, and distribute this software for 
  5.  * any purpose and without fee is hereby granted, provided that the above
  6.  * copyright notice appear in all copies and that both the copyright notice
  7.  * and this permission notice appear in supporting documentation, and that 
  8.  * the name of Silicon Graphics, Inc. not be used in advertising
  9.  * or publicity pertaining to distribution of the software without specific,
  10.  * written prior permission. 
  11.  *
  12.  * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS"
  13.  * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE,
  14.  * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
  15.  * FITNESS FOR A PARTICULAR PURPOSE.  IN NO EVENT SHALL SILICON
  16.  * GRAPHICS, INC.  BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
  17.  * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
  18.  * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
  19.  * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
  20.  * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC.  HAS BEEN
  21.  * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
  22.  * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
  23.  * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE.
  24.  * 
  25.  * US Government Users Restricted Rights 
  26.  * Use, duplication, or disclosure by the Government is subject to
  27.  * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
  28.  * (c)(1)(ii) of the Rights in Technical Data and Computer Software
  29.  * clause at DFARS 252.227-7013 and/or in similar or successor
  30.  * clauses in the FAR or the DOD or NASA FAR Supplement.
  31.  * Unpublished-- rights reserved under the copyright laws of the
  32.  * United States.  Contractor/manufacturer is Silicon Graphics,
  33.  * Inc., 2011 N.  Shoreline Blvd., Mountain View, CA 94039-7311.
  34.  *
  35.  * OpenGL(TM) is a trademark of Silicon Graphics, Inc.
  36.  */
  37. #include <GL/gl.h>
  38.  
  39. static float a_data[][2] = {
  40.     {5.618949, 10.261048},
  41.     {5.322348, 9.438848},
  42.     {5.124614, 10.030832},
  43.     {4.860968, 9.488181},
  44.     {4.811534, 9.932169},
  45.     {3.938208, 9.438848},
  46.     {3.658084, 9.685509},
  47.     {2.784758, 8.994862},
  48.     {2.801236, 9.175745},
  49.     {1.960865, 8.172662},
  50.     {1.186406, 7.761562},
  51.     {1.252317, 6.561151},
  52.     {0.576725, 6.610483},
  53.     {0.939238, 5.525180},
  54.     {0.164779, 4.883864},
  55.     {0.840371, 4.818089},
  56.     {0.230690, 3.963001},
  57.     {0.939238, 4.242549},
  58.     {0.609681, 3.255909},
  59.     {1.268795, 3.963001},
  60.     {1.021627, 3.075026},
  61.     {1.861998, 4.045221},
  62.     {1.829042, 3.535457},
  63.     {2.817714, 4.818089},
  64.     {3.163749, 4.998972},
  65.     {3.971164, 6.643371},
  66.     {4.267765, 6.725591},
  67.     {4.663234, 7.630010},
  68.  
  69.     {5.404737, 9.734840},
  70.     {4.646756, 9.669065},
  71.     {5.108136, 8.731757},
  72.     {4.679712, 8.600205},
  73.     {4.926879, 7.564234},
  74.     {4.366632, 6.692703},
  75.     {4.663234, 5.344296},
  76.     {3.888774, 4.850976},
  77.     {4.630278, 4.094553},
  78.     {3.954686, 3.963001},
  79.     {4.828012, 3.798561},
  80.     {4.168898, 3.321686},
  81.     {5.157569, 3.864337},
  82.     {4.514933, 3.091470},
  83.     {5.553038, 4.045221},
  84.     {5.305870, 3.634121},
  85.     {5.932029, 4.176773},
  86.  
  87. };
  88.  
  89. void draw_a(void) {
  90.  
  91.     glBegin(GL_TRIANGLE_STRIP);
  92.     glVertex2fv(a_data[0]);
  93.     glVertex2fv(a_data[1]);
  94.     glVertex2fv(a_data[2]);
  95.     glVertex2fv(a_data[3]);
  96.     glVertex2fv(a_data[4]);
  97.     glVertex2fv(a_data[5]);
  98.     glVertex2fv(a_data[6]);
  99.     glVertex2fv(a_data[7]);
  100.     glVertex2fv(a_data[8]);
  101.     glVertex2fv(a_data[9]);
  102.     glVertex2fv(a_data[10]);
  103.     glVertex2fv(a_data[11]);
  104.     glVertex2fv(a_data[12]);
  105.     glVertex2fv(a_data[13]);
  106.     glVertex2fv(a_data[14]);
  107.     glVertex2fv(a_data[15]);
  108.     glVertex2fv(a_data[16]);
  109.     glVertex2fv(a_data[17]);
  110.     glVertex2fv(a_data[18]);
  111.     glVertex2fv(a_data[19]);
  112.     glVertex2fv(a_data[20]);
  113.     glVertex2fv(a_data[21]);
  114.     glVertex2fv(a_data[22]);
  115.     glVertex2fv(a_data[23]);
  116.     glVertex2fv(a_data[24]);
  117.     glVertex2fv(a_data[25]);
  118.     glVertex2fv(a_data[26]);
  119.     glVertex2fv(a_data[27]);
  120.     glEnd();
  121.  
  122.     glBegin(GL_TRIANGLE_STRIP);
  123.     glVertex2fv(a_data[28]);
  124.     glVertex2fv(a_data[29]);
  125.     glVertex2fv(a_data[30]);
  126.     glVertex2fv(a_data[31]);
  127.     glVertex2fv(a_data[32]);
  128.     glVertex2fv(a_data[33]);
  129.     glVertex2fv(a_data[34]);
  130.     glVertex2fv(a_data[35]);
  131.     glVertex2fv(a_data[36]);
  132.     glVertex2fv(a_data[37]);
  133.     glVertex2fv(a_data[38]);
  134.     glVertex2fv(a_data[39]);
  135.     glVertex2fv(a_data[40]);
  136.     glVertex2fv(a_data[41]);
  137.     glVertex2fv(a_data[42]);
  138.     glVertex2fv(a_data[43]);
  139.     glVertex2fv(a_data[44]);
  140.     glEnd();
  141.  
  142.     glBegin(GL_LINE_STRIP);
  143.     glVertex2fv(a_data[0]);
  144.     glVertex2fv(a_data[2]);
  145.     glVertex2fv(a_data[4]);
  146.     glVertex2fv(a_data[6]);
  147.     glVertex2fv(a_data[8]);
  148.     glVertex2fv(a_data[10]);
  149.     glVertex2fv(a_data[12]);
  150.     glVertex2fv(a_data[14]);
  151.     glVertex2fv(a_data[16]);
  152.     glVertex2fv(a_data[18]);
  153.     glVertex2fv(a_data[20]);
  154.     glVertex2fv(a_data[22]);
  155.     glVertex2fv(a_data[24]);
  156.     glVertex2fv(a_data[26]);
  157.     glVertex2fv(a_data[27]);
  158.     glVertex2fv(a_data[25]);
  159.     glVertex2fv(a_data[23]);
  160.     glVertex2fv(a_data[21]);
  161.     glVertex2fv(a_data[19]);
  162.     glVertex2fv(a_data[17]);
  163.     glVertex2fv(a_data[15]);
  164.     glVertex2fv(a_data[13]);
  165.     glVertex2fv(a_data[11]);
  166.     glVertex2fv(a_data[9]);
  167.     glVertex2fv(a_data[7]);
  168.     glVertex2fv(a_data[5]);
  169.     glVertex2fv(a_data[3]);
  170.     glVertex2fv(a_data[1]);
  171.     glEnd();
  172.  
  173.     glBegin(GL_LINE_STRIP);
  174.     glVertex2fv(a_data[28]);
  175.     glVertex2fv(a_data[30]);
  176.     glVertex2fv(a_data[32]);
  177.     glVertex2fv(a_data[34]);
  178.     glVertex2fv(a_data[36]);
  179.     glVertex2fv(a_data[38]);
  180.     glVertex2fv(a_data[40]);
  181.     glVertex2fv(a_data[42]);
  182.     glVertex2fv(a_data[44]);
  183.     glVertex2fv(a_data[43]);
  184.     glVertex2fv(a_data[41]);
  185.     glVertex2fv(a_data[39]);
  186.     glVertex2fv(a_data[37]);
  187.     glVertex2fv(a_data[35]);
  188.     glVertex2fv(a_data[33]);
  189.     glVertex2fv(a_data[31]);
  190.     glVertex2fv(a_data[29]);
  191.     glEnd();
  192.  
  193. }
  194.  
  195.